package com.fxp.project.jiuselu.web.models.user.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper = false)
public class JslUserSaleInfoVo {

    /**
     * 用户Id
     */
    @TableId(value = "user_id", type = IdType.AUTO)
    private Long userId;

    /**
     * 昵称
     */
    @TableField("nick_name")
    private String nickName;

    /**
     * 用户头像
     */
    private String avatar;

    /**
     * 手机
     */
    @TableField("user_phone")
    private String userPhone;

    /**
     * 用户密码
     */
    private String password;

    /**
     * 邀请码
     */
    @TableField("invite_code")
    private String inviteCode;

    @TableField("site_area")
    private String siteArea;
    /**
     * 邀请人Id
     */
    @TableField("invite_id")
    private Long inviteId;

    /**
     * 邀请人数
     */
    @TableField("invite_num")
    private Long inviteNum;

    /**
     * 直接上级
     */
    @TableField("first_leader")
    private Long firstLeader;

    /**
     * 间接上级
     */
    @TableField("second_leader")
    private Long secondLeader;

    /**
     * 公司名称
     */
    @TableField("company_name")
    private String companyName;

    /**
     * 用户等级 0、普通用户 1、业务员 2、销售经理
     */
    private Integer level;

    /**
     * 用户消费金额
     */
    @TableField("consume_amount")
    private BigDecimal consumeAmount;

    /**
     * 用户金额
     */
    @TableField("user_money")
    private BigDecimal userMoney;

    /**
     * 冻结金额
     */
    @TableField("frozen_money")
    private BigDecimal frozenMoney;

    /**
     * 累计分佣金额
     */
    @TableField("distribute_money")
    private BigDecimal distributeMoney;

    /**
     * 创建者
     */
    @TableField("create_by")
    private String createBy;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 更新者
     */
    @TableField("update_by")
    private String updateBy;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private LocalDateTime updateTime;

    //用户状态0禁用1启用
    private Integer enable;

    //是否修改：0：未修改 1已修改
    @TableField("is_alter")
    private Integer isAlter;

    //是否在线：0：离线 1：在线
    @TableField("online")
    private Integer online;

    /**
     * 审核状态：0、待审核 1、审核通过 2、 审核不通过
     */
    private Integer status;

}
